1. 名字解释：MAC地址、IP地址、TCP、UDP
MAC地址：用于在链路上对接口进行表示，唯一标识一个以太网接口，MAC要求全球唯一
IP地址：用于在网络中标识唯一的某台网络设备，IP地址全网唯一
TCP：传输控制协议，面向连接，提供可靠性保证，在建立连接前需要建立三次握手，结束连接时需要四次挥手
UDP：用户数据包协议，一种面向无连接的传输层协议，传输可靠性没有保证。


2. 阐述如有一主机A向主机B发送数据包在网络上经过的各个步骤
①主机A将想要发的数据进行传输层封装，打上传输层头部，传输层头部包含源目端口号，源端口表示自己建立会话的程序，目的端口号标识想要发送到的端口
②将数据继续送到网络层，网络层打上源目IP头部，源IP表示主机自己的IP，目的IP表示想要送到的主机B的IP地址
③继续将数据送到数据链路层，数据链路层阶段需要确认主机B的MAC地址，如果主机A的MAC地址表上有，则直接封装成数据帧，如果没有则先确定主机B与自身是否处于同一网段，在同一网段则发送ARP广播请求主机B的MAC地址，不在则ARP请求网关的MAC封装
④下一步送到物理层，物理层将数据帧转换为比特流，从网线、光纤等传输介质传输送到主机B
⑤主机B从传输介质收到后，首先将比特流组合成数据帧，将数据帧进行解封装，查看数据帧目的MAC地址，是自己的则接收，不是就丢弃
⑥主机B解封装后传递给网络层，网络层根据目的IP确认是否是自身的IP地址，是接收，不是则根据情况是否转发还是丢弃
⑦网络层解封装后传递给传输层，传输层根据目的端口号确定交给哪个程序使用，最后目标程序获得多次解封装的数据



3. 利用本周学习的知识实现如下效果的程序：

1. server端监听指定的tcp端口
2. server端预先实现简单加减法的代码(可以自行扩展其他更复杂功能)
3. client端可以通过socket连接与server端通信传输需要参数
4. server端根据传的参数计算结果并返回
5. client端打印返回结果